//先把人家node_modules里面的axios进行引入
import axios, { type AxiosResponse } from 'axios'
import { ElMessage, ElMessageBox} from 'element-plus'
//于 定义接口
interface ResponseData<T> {
	code: number;
	data: T;
	message: string;
}


//axios基本配置:axios.create方法，其实说白了也是返回axios
let request = axios.create({
	//基础路径
	baseURL: '/mock', //代表全部请求路径当中会携带/apis
	//超时设置
	timeout: 5000, //代表超时的时间为5S
})

//请求拦截器
request.interceptors.request.use((config:any) => {
	return config
})

//相应拦截器
request.interceptors.response.use(
	(res) => {
		return res.data
	},
	(error) => {
		//统一处理项目错误的地方
		if (error.code == 'ERR_BAD_REQUEST') {
			alert('兄弟你看一眼你路径对不，指定错了')
		}
		//统一处理错误
		//处理失败的业务可以在这里处理
		return new Promise(() => {})
	}
)

//对外暴露request
export default request
